package com.by.rpc.dto;

import com.by.rpc.util.ServiceParameter;
import lombok.Data;

import java.util.List;

/**
 * RPC请求对象，封装远程调用所需的信息
 */
@Data
public class RpcRequest {
    // 请求ID
    private String requestId;
    // 服务模块名称，针对Rpc Endpoint
    private String serviceName;
    // 接口名称 优先级高于服务模块名称的调用 针对模块内服务
    private String interfaceName;
    // 服务版本号
    private String version;
    // 服务分组
    private String group;
    // 方法名称
    private String methodName;
    private String requestMethod;
    private List<ServiceParameter> parameters;
    
    // 追踪相关字段
    private String traceId;
    private String spanId;
    private String parentSpanId;
}